home *** CD-ROM | disk | FTP | other *** search
- @@NO HELP
- No help is available for this selection. Please
- refer to the TimeStack User's Guide for
- additional help
-
- @@File
- The File menu lets you manipulate all files in
- TimeStack. This includes loading the hex file,
- saving and restoring the node list, and getting
- and putting the configuration to disk.
-
- @@File Load
- This prompts the name of the hex file. The hex
- file is given a default extension of .HEX if no
- extension is entered. If an extension is not
- desired then enter the name as NAME. with a
- period on the end.
-
- The hex file may be Motorola or Intel hex format.
-
- The hex file is automatically loaded if a
- configuration file is loaded and there is a hex
- filename specified in its configuration.
-
- @@File Save
- This name is used to write out the special node
- list file. The node list filename entered here
- is the same name used in the menu File | Restore.
-
- The node list file is given a default extension
- of .NOD if no extension is entered. If an
- extension is not desired then enter the name
- as NAME. with a period on the end.
-
- The node list file is automatically loaded if a
- configuration file is loaded and there is a node
- list filename specified.
-
- @@File Restore
- The node list filename is entered here. This
- name is used to read in the special node list
- file. Any name entered here will also be used
- by the menu File | Save.
-
- The node list file is given a default extension
- of .NOD if no extension is entered. If an
- extension is not desired then enter the name
- as NAME. with a period on the end.
-
- The node list file is automatically loaded if a
- configuration file is loaded and there is a node
- list filename specified.
-
- @@File Get
- The configuration of TimeStack is read in from
- here. Any name entered here will also be used
- by the menu File | Put.
-
- The configuration file is given a default
- extension of .CFG if no extension is entered.
- If an extension is not desired then enter the
- name as NAME. with a period on the end.
-
- If the configuration file xxxxxx.CFG, where
- xxxxxx is the name of the program, is found
- when TimeStack starts up, that configuration
- is loaded.
-
- @@File Put
- The current TimeStack configuration is saved in
- this file. The configuration filename entered
- here is the same name used in the menu
- File | Get.
-
- The configuration file is given a default
- extension of .CFG if no extension is entered.
- If an extension is not desired then enter the
- name as NAME. with a period on the end.
-
- @@Analysis
- The start and stop addresses of the analysis to
- be done are entered here. The cursor starts out
- on the top line which is the start address. The
- hexadecimal start address obtained from a
- program listing is entered here.
-
- Pressing ENTER moves to the stop address on
- the next line. A hexadecimal stop address
- determined by inspecting the program listing
- is entered.
-
- If the analysis is on a procedure that finishes
- with a return from subroutine instruction, enter
- a hexadecimal value that contains all F's such
- as FFFF. The analysis will automatically stop
- when it finds a return from subroutine instruction.
-
- Pressing ESC from this line restores the
- previous value and moves the cursor back up
- to the start address line.
-
- @@Analysis Abort Yes
- The analysis may be aborted by pressing ESC
- while it is running.
-
- Choosing 'Yes' at this time will stop the
- analysis from completing.
-
- @@Analysis Abort No
- The analysis may be aborted by pressing ESC
- while it is running.
-
- Choosing 'No' at this time will allow the
- analysis to continue running.
-
- @@Edit
- Edit the instruction at the address entered.
- The instruction must be a conditional branch,
- a jump to subroutine, an indexed jump, or
- an indexed jump to subroutine. The type of
- instruction will determine which menu is
- displayed.
-
- @@Edit Take
- The choices for conditional branches are Take,
- Fall, Normal, or Clear.
-
- This selection asks how many times to take the
- conditional branch before it is allowed to
- fall through.
-
- A value of zero indicates that the branch should
- always be taken (ie. it never falls through).
-
- Example:
- LDAA #5
- LOOP: NOP
- DECA
- BNE LOOP ; TAKE 4
- RTS
-
- In this example, it is correct for the conditional
- branch BNE to be set to TAKE 4 times. The fifth
- time through the loop it falls through.
-
- @@Edit Fall
- The choices for conditional branches are Take,
- Fall, Normal, or Clear.
-
- This selection asks how many times to fall through
- the conditional branch before it is allowed to
- be taken.
-
- A value of zero indicates that the branch should
- always fall through (ie. it is never taken).
-
- Example:
- LDAA #6
- LOOP: DECA
- BEQ DONE ; FALL 5
- NOP
- BRA LOOP
- DONE: RTS
-
- In this example, it is correct for the conditional
- branch BEQ to be set to FALL 5 times. The sixth
- time through the loop it is taken.
-
-
- @@Edit Normal
- Treat the conditional branch as you would a normal
- forward branch. Both paths of the branch are
- analyzed.
-
- @@Edit Delete
- Delete the branch from the special node list.
-
- @@Edit JMP IND
- The menu for jumps indirect first displays the
- option to handle the jump indirect exactly as it
- would a return from subroutine instruction. If
- this is not chosen then the address that should
- be jumped to is requested.
-
- @@Edit Clear JSR
- The time and stack that was entered for this
- jump subroutine may be cleared.
-
- Yes - clears this information.
-
- No - leaves the information.
-
- @@Clear
- It is possible to clear nodes in the Special
- Nodes window one at a time using the Edit menu
- but this is time consuming. This option allows
- clearing all nodes from the given starting
- address through the given ending address,
- inclusive.
-
- @@Disasm
- The Disassembly window needs to know where to
- start when it disassembles a portion of the
- program. Enter the starting address for
- disassembly here.
-
- @@Options
- There are many different options available so
- that TimeStack may be customized.
-
- Look at each option individually to find out
- more about it.
-
- @@Options Type
- The type of processor can have an effect on what
- opcodes are illegal and how many clock cycles an
- opcode uses. Some processor families have a
- large number of choices. This may mean a
- difference in timing characteristics or it may
- just allow that specific name to be chosen for
- display purposes.
-
- Any time a processor is picked, the clock divisor
- value is reset to a default value for that
- processor.
-
- @@Options Clock
- This is used to specify the clock rate of the
- processor. It is used to calculate how many
- microseconds the maximum and minimum execution
- times are in the Analysis Results window.
-
- The number entered is in megahertz. It must be
- between 0 and 200 MHz. It is a floating point
- number with at least five digits of accuracy.
- It may be entered as a regular number or using
- scientific notation.
-
- @@Options Divisor
- Every processor has a factor that the external
- clock input is divided by. The external clock
- is divided by this value to obtain an internal
- clock that is referred to as the cycle time.
-
- Most processors have a fixed value for this
- internal divisor but it may be changed here.
-
- The number entered must be between 0 and 256.
- It is a floating point number with at least
- five digits of accuracy. It may be entered as
- a regular number of using scientific notation.
-
- @@Options Get
- Gets additional information on the current state
- of TimeStack.
-
- This includes filenames, current processor type,
- clock rate, clock divisor, and memory available.
-
- @@Options Config Auto
- This allows the configuration to automatically be
- saved when Quiting.
-
- Yes - sets up TimeStack to automatically save the
- configuration when Quiting.
-
- No - does not allow automatic saving of the
- configuration when Quiting.
-
- @@Options Node Auto
- This allows the node list to automatically be
- saved when Quiting.
-
- Yes - sets up TimeStack to automatically save the
- node list when Quiting.
-
- No - does not allow automatic saving of the
- node list when Quiting.
-
- @@Print
- The information obtained from the analysis may be
- saved in a file on disk or sent to a printer.
-
- @@Print Comments
- A line at the top of the printed information may
- optionally contain a comment. That line is
- entered here and remains until replaced with
- another line.
-
- @@Print Save
- Outputs the current analysis results to a file.
-
- This file is usually saved for printing later.
-
- @@Print Output
- Outputs the current analysis results to a printer.
- The output is sent to the DOS print device PRN.
-
- Be sure the printer is turned on, loaded with
- paper, and on-line.
-
- @@Print Opening
- There is a problem opening this file for printing.
-
- @@Print Error
- There is a problem trying to communicate with
- the printer. This could be caused by a couple
- of different things.
-
- 1. Be sure the printer is plugged in and turned
- on. Make sure all of the printer cables are
- connected correctly.
-
- 2. Check that it has not run out of paper.
-
- 3. Look to see that is it on-line.
-
- @@Quit
- Quit the TimeStack program. If the Special Nodes
- have been modified in any way and the 'save
- special nodes automatically' feature is not active,
- a prompt is given to ask if the information should
- really be saved.
-
- If the special nodes are to be saved and no
- filename has been entered then it will be prompted.
-
- @@Quit Node
- The current special nodes will be saved if you
- choose 'Yes' at this time.
-
- Any changes made to the special nodes will be
- lost if 'No' is chosen.
-
- @@Quit Configuration
- The current configuration will be saved if you
- choose 'Yes' at this time.
-
- Any changes made to the configuration will be
- lost if 'No' is chosen.
-
- @@Config Error Reading
- The configuration file that was entered was not
- found while trying to open it for the first time.
-
- @@Config Header
- The first line of information in the configuration
- file is bad. It probably means the file is not
- a valid TimeStack configuration file.
-
- @@Config Version
- The configuration file version is greater than the
- program reading it.
-
- @@Config Revision
- The configuration file revision is not the same as
- the program reading it.
-
- @@Config Size
- The configuration file is too big. This indicates
- some problem with the file.
-
- @@Config Error Writing
- The configuration file that was entered had an
- error while trying to open it for writing.
-
- @@CPU Error
- The processor type in the configuration file was
- not a valid choice for this program. A default
- will be selected as the processor type.
-
- @@CPU Not Found
- The processor type in the configuration file was
- not found. A default will be selected as the
- processor type.
-
- @@CPU Selection
- Choose one of the given processors. These are
- the only processors this version of the program
- will recognize.
-
- Some of the processors may operate identically
- but have been given their own entry to allow for
- more specific documentation.
-
- @@Error
- No help is available. Refer to the TimeStack
- User's Guide.
-
- @@Infinite Loops
- Infinite loops in the program will eventually
- cause the analysis to reach an internal limitation
- and stop.
-
- If a memory limitation is reached, it is up to
- the user to determine if or how the program entered
- into a large or infinite loop. In general, it is
- not a good idea to try and time loops that run for
- more than a couple of hundred iterations.
-
- Also, it may be that one of the conditional
- branches in the program has not been set up or
- set up correctly. It may be possible to narrow
- down the area that is the problem by changing the
- start and stop addresses to analyze a smaller
- portion.
-
- A solution to timing loops that run for a large
- number of times is to time the loop when it is
- taken only once. Then time the loop when it
- is taken twice. Calculate the difference
- between these results and you have how long each
- iteration of the loop takes.
-
- @@Hex Files
- Some common problems with hex files are as
- follows.
-
- Not all address ranges are valid. The
- given address may not exist in the hex file
- that was loaded.
-
- @@Illegal Opcodes
- An illegal opcode means that the value in memory
- at the indicated address was not a valid
- instruction for the current processor type.
-
- It may be that the current processor type is set
- incorrectly or the hex file that was loaded was
- for another processor or the starting address was
- incorrectly specified or the program is in error.
-
- @@No Time
- This opcode is not able to be included in the
- timing analysis for this program.
-
- For some reason, the instruction is too difficult
- to logically be analyzed by TimeStack.
-
- @@Indirect Addressing JSR
- The cycle time and worst stack depth must be
- entered for a jump subroutine indirect instruction.
-
- If this information is not known then do an
- analysis of the subroutine that is to be the
- destination of this instruction.
-
- @@Indirect Addressing JMP
- A destination address is needed for a jump
- indirect instruction.
-
- @@Backwards Branching
- If a backwards branch is encountered it is
- possible for a loop structure to exist.
-
- The option to edit conditional branches is
- given at this time so that if this is part of
- a loop it can be set up.
-
- @@Stack Mismatch
- The stack depth when this conditional branch
- is taken and when it falls through is different.
-
- This MIGHT indicate a path where the stack
- could become unbalanced based on the logic.
-
- @@Difficult Structures
- Some loop structures are too difficult for
- the analysis to calculate correctly. The
- conditional branch that should be modified
- to help the analysis out is indicated.
-
- @@Stop Address
- The stop address that was entered for the
- analysis was never reached. Probably the
- address entered was less than the starting
- address, or it may have been greater than
- the last return from subroutine instruction
- in the subroutine.
-
- @@Branch Past
- A branch inside the analysis range branched
- past the specified stop address.
-
- This could mean the stop address indicated was
- shorter than intended.
-
- @@Internal Error
- An internal error has occurred that should not
- have happened under normal circumstances.
-
- Please report this to BE, Inc.
-
- @@Help Files
- The help files were not found in the search path.
-
- The search path is the current directory of the
- current drive followed by each directory in the
- PATH environment variable.
-